Multidimensional Asymmetric Bang-Bang Control

ABSTRACT

In one embodiment, a system includes one or more digital feedback equalizers (DFEs) that include one or more residual intersymbol interference (ISI) detectors, one or more column balancers, and one or more weight selectors. The residual ISI detectors produce a first output signal indicating whether the residual ISI of a received input signal has a positive sign or a negative sign. The column balancers select one of the first output signals to produce a second output signal. The weight selectors access one of the weight values. The weight value corresponds to the column balancer, the residual ISI detector that, and the sign of the residual ISI, and has a magnitude that is substantially independent of the sign of the residual ISI. The weight selectors produce a third output signal based on the weight value and the sign of the residual ISI.

RELATED APPLICATION

This application claims the benefit, under 35 U.S.C. § 119(e), of U.S.Provisional Patent Application No. 61/074,182, entitled System andMethod For Equalizer Control, filed 20 Jun. 2008, which is incorporatedherein by reference.

TECHNICAL FIELD

This disclosure relates generally to electrical communication.

BACKGROUND

A transmission channel may distort high-frequency (HF) signalscommunicated through it. The distortion may be a result offrequency-dependent signal attenuation caused, for example, by skineffect or dielectric effect in the transmission channel and may varyaccording to one or more characteristics of the transmission channel,such as a length or an insulator material of the transmission channel.To compensate for the distortion, a transmitter transmitting signalsthrough the transmission channel may include a pre-emphasis driver. Areceiver receiving the signals through the transmission channel mayinclude one or more equalizers.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates example pulse responses of an example transmissionchannel, an example linear equalizer (LE), and an example decisionfeedback equalizer (DFE).

FIG. 2 illustrates an example DFE.

FIG. 3 illustrates an example system for adaptive control of an exampleLE and an example DFE.

FIG. 4 illustrates an example pulse response at an output of an exampleLE and example data and boundary feedback (FB) coefficients.

FIG. 5 illustrates an example speculative 1-tap DFE.

FIG. 6 illustrates an example LE.

FIG. 7 illustrates example residual boundary intersymbol interference(ISI) in an example pulse response at an output of an example LE.

FIG. 8 illustrates example convolution of example residual boundary ISIand an example data sequence.

FIG. 9 illustrates example detection of residual boundary ISI based onone or more boundary-value differences between two data sequences.

FIG. 10 illustrates example statistical detection of residual boundaryISI using two data sequences.

FIG. 11 illustrates two example data sequences for detecting exampleresidual boundary ISI.

FIG. 12 illustrates example aggregate detection of residual boundary ISIusing two data sequences.

FIG. 13 illustrates example aggregate detection of residual boundary ISIusing two successive transitions.

FIG. 14 illustrates example aggregate detection of multiple componentsof residual boundary ISI using one data sequence.

FIG. 15 illustrates example sets of data sequences for detectingresidual boundary ISI.

FIG. 16 illustrates example equalizer-control logic using an examplesign-based method.

FIG. 17 illustrates example operation of an example column balancer.

FIG. 18 illustrates example adaptive equalizer control based on examplelevel error.

FIG. 19 illustrates example residual data ISI in an example pulseresponse at an output of an example LE.

FIG. 20 illustrates example convolution of example residual data ISI andan example data sequence.

FIG. 21 illustrates example detection of residual data ISI based on oneor more differences in level-error values between two data sequences.

FIG. 22 illustrates an example method for adaptive control of a DFE.

FIG. 23 illustrates an example method for detecting residual ISIcomponents using two data patterns.

FIG. 24 illustrates an example method for sign-based generalzero-forcing adaptive equalizer control.

FIG. 25 illustrates an example method for multidimensional asymmetricbang-bang control.

DESCRIPTION OF EXAMPLE EMBODIMENTS

FIG. 1 illustrates example pulse responses of an example transmissionchannel, an example LE, and an example DFE. The transmission channelcommunicates a signal from a transmitter to a receiver that includes theLE and the DFE, which process the received signal. The LE and DFE maycommunicate the processed signal in any suitable manner to a decisioncircuit or any other circuit components. After transmission over thechannel, the received signal (or pulse) has a long tail due tohigh-frequency loss in the transmission channel. The long tail causesISI because the long tail interferes with successively transmittedsymbols. In particular embodiments, there may be two symbols: such as 0and 1 or −1 and +1. The present disclosure contemplates any suitablesymbols. In FIG. 1, the LE moderately amplifies an attenuatedhigh-frequency component of the received signal to reduce residual ISIoccurring after a particular delay. If the DFE after the LE is a 1-tapDFE, the LE may reduce residual ISI occurring after a delay of 2.0 unitintervals (UIs), as FIG. 1 illustrates. The DFE cancels the residual ISIoccurring more immediately after the pulse. If the DFE is a 1-tap DFE(as in FIG. 1) the DFE may use a feedback loop from a decision circuitin the DFE to cancel residual ISI occurring after a delay of 1.0 UI. Inparticular embodiments, the LE and 1-tap DFE may apply compensation asillustrated in FIG. 1 that minimizes and cancels residual ISI occurringafter particular unit intervals of delay. In particular embodiments, theLE and 1-tap DFE may reduce residual ISI occurring after particular unitintervals of delay.

The receiver may include any suitable equalizer or combination ofequalizers for receiving, at an input port, the signal from thetransmitter and applying a gain, offset, or other modification to thesignal according to parameters that specify an amount of compensation toapply to the signal. Such parameters may be adaptive, which may bedesirable when one or more characteristics of the transmission channelare unknown. The receiver may also include equalizer-control logic foradjusting such parameters. U.S. Patent Application Publication No.2007/0280383, entitled System and Method for Adjusting CompensationApplied to a Signal and published 6 Dec. 2007, which is incorporatedherein by reference, further describes adjusting equalizer parameters tocompensate for signal distortion. One or more of the equalizers in thereceiver may utilize a feedback signal, applying the feedback signal tothe signal from the transmitter to compensate for distortion in thesignal. The present disclosure may refer to circuit components applyingcompensation for distortion in a signal as being part of an adaptiveequalizer or an adaptive equalizer control system. Herein, reference toan adaptive equalizer may encompass an adaptive equalizer controlsystem, and vice versa, where appropriate. For example, in FIG. 1, anadaptive equalizer control system includes an LE and a DFE to providetwo-dimensional adaptive equalizer control.

An adaptive equalizer control system may include an LE to reduceresidual ISI with greater than or equal to approximately 2.0 UIs ofdelay. If an LE applies too little amplification, the pulse response mayinclude a long tail of residual interference greater than zero overmultiple UIs of delay. For example, the pulse response may demonstrateresidual interference greater than zero over approximately 2.5, 3.0, and3.5 UIs of delay. On the other hand, if an LE applies too muchamplification, the pulse response may include a long tail of residualinterference less than zero over multiple UIs of delay. The particularcomponents chosen for an adaptive equalizer control system may depend onone or more characteristics of the transmission channel. For example,communication through particular transmission channels may benefit onlyslightly, if at all, from the use of a DFE. Particular adaptiveequalizer control systems may utilize only an LE (without a DFE) toreduce residual ISI with greater than or equal to approximately 1.0 UIsof delay or with greater than or equal to even less than approximately1.0 UIs of delay.

Particular embodiments may utilize adaptive equalization as describedherein in contexts other than signal transmission. As an example and notby way of limitation, particular embodiments may apply adaptiveequalization as described herein to a recording channel, such as amagnetic, optical, or other recording channel.

FIG. 2 illustrates an example DFE. The DFE receives DFE input, combinesthe DFE input with a feedback signal generated by a feedback filter,processes the combined signal using a decision circuit that performssampling and 1-bit analog-to-digital (A/D) conversion, and outputs DFEoutput. The feedback signal cancels residual ISI in the DFE input.Herein, “cancel” may mean “reduce,” where appropriate. For a 1-tap DFE,the feedback signal may have a negative peak at approximately 1.0 UIs.For a 2-tap DFE, the feedback signal may have a negative peak atapproximately 1.0 UIs and 2.0 UIs. In FIG. 2, the feedback signal has anonzero value at approximately 0.5 UIs and 1.5 UIs and has a zero valueat all other discrete timings with an interval of 0.5 UIs. In particularembodiments, the DFE does not utilize feedback from less than or equalto 0.5 UIs of prior data. Instead, the DFE combines the feedback signalwith later UIs of prior data.

In particular embodiments, the DFE includes a feedback loop having a1-tap feedback filter similar to a duo-binary partial-response equalizerwithout pre-coding and employs a speculative technique to unroll thefeedback loop. Although the present disclosure describes and illustratesparticular DFEs including particular combinations of particularcomponents for particular adaptive control using particular adaptivecontrol algorithms, the present disclosure contemplates any suitableDFEs including any suitable combinations of any suitable components forany suitable adaptive control using any suitable adaptive controlalgorithms. As an example and not by way of limitation, particularembodiments may utilize adaptive control that is based on one or moreconventional adaptive control algorithms, such as, for example, aLeast-Mean-Square (LMS) algorithm, a Sign-Sign-Least-Mean-Square(SS-LMS) algorithm, or a Zero-Forcing (ZF) algorithm. As anotherexample, particular embodiments may utilize a sign-based ZF algorithmthat does not require measuring quantities of residual ISI. Inparticular embodiments, LEs (in addition to DFEs) utilize one or moreadaptive control algorithms.

In FIG. 3, the DFE is divided into a data DFE and a boundary DFE. Thedata and boundary DFEs may each be implemented using a speculative orloop unrolled scheme. In particular embodiments, in the data DFE, theoutput of the decision circuit is delayed by approximately 1.0 UIs,multiplied by a data feedback (FB) coefficient, and then subtracted fromthe input from the LE before the decision circuit in the data DFE makesa decision with respect to a next symbol. In particular embodiments, theoutput of the decision circuit has a binary value, either +1 or −1. Ifthe data FB coefficient matches the residual ISI at approximately 1.0UIs delay, the data DFE will cancel the residual ISI at approximately1.0 UIs delay. In particular embodiments, in the boundary DFE, thefeedback signal is based on the output of the decision circuit in thedata DFE. The output of the decision circuit in the data DFE is delayedby approximately 1.5 UIs, multiplied by the boundary feedback (FB)coefficient, and then subtracted from the input from the LE before thedecision circuit in the boundary DFE makes a decision with respect to anext boundary. The amount of delay may vary from approximately 1.5 UIswhen the delay from the boundary clock to the data clock varies fromapproximately 0.5 UI. For example, if the delay from the boundary clockto the data clock were approximately 0.3 UIs, the feedback delay wouldbe approximately 1.7 UIs.

In FIG. 3, the outputs of the data DFE and the boundary DFE aredemultiplexed and then used by clock-recovery and equalizer-controllogic. The demultiplexed data is used as the recovered data output. Theclock-recovery logic uses a reference clock from a phase-locked loop(PLL). The clock-recovery logic detects phase error from thedemultiplexed data and boundary values, processes the phase error usinga digital filter to adjust a phase code for a data clock and a boundaryclock, and generates the data clock and the boundary clock based on thereference clock and the phase code. In particular embodiments, theclock-recovery logic adjusts the phase code based on 0.5 UIs of delayfrom the boundary clock to the data clock. In particular embodiments,the clock-recovery logic adjusts the phase code based on 0.3 UIs ofdelay from the boundary clock to the data clock.

The equalizer-control logic in FIG. 3 receives recovered data output andrecovered boundary output and generates and transmits equalizerparameters for controlling the amount of compensation for an equalizerto apply. In particular embodiments, equalizer-control logic uses one ormore residual ISI detectors to detect a residual ISI vector from thedemultiplexed data and boundary values and uses integrators to generateequalizer parameters. As used herein, the phrase “residual ISI” mayrefer to one or more “residual ISI vectors” or one or more vector valuesof residual ISI vectors, except where a particular “residual ISIcomponent” is specified. A residual ISI vector may be produced using anymathematical operations that produce vector output from any type ofdata, such as, for example, scalar data and vector data, and may haveany length. Mathematical operations used to produce vector values may beperformed any number of times to produce any number of vector values forany number of vectors. In particular embodiments, equalizer-controllogic may require additional hardware such as a monitoring circuit toadaptively control equalizer parameters. Alternatively,equalizer-control logic adaptively controls equalizer parameters using ascheme that does not require additional hardware such as a monitoringcircuit, which may, for example, increase loading to a high-speed analogcircuit and power consumption. Equalizer-control logic may adaptivelycontrol any suitable control parameter such as, for example, LE gain,boundary FB coefficient, data FB coefficient, and offset code, or anycombination of suitable control parameters. For example,equalizer-control logic may provide FB control for a boundary DFE basedon a boundary FB coefficient and feed-forward control for a data DFEbased on the boundary FB coefficient.

Particular embodiments generate a data FB coefficient from a boundary FBcoefficient. To generate the data FB coefficient, the boundary FBcoefficient may be processed by a low-pass filter (LPF) to compute anaverage and the average may be multiplied by a data coefficient scalingfactor (DCESF). The boundary FB coefficient may be controlled using afeedback control scheme, since a change in the boundary FB coefficientmay affect a corresponding change in boundary value, with observableeffects. The data FB coefficient may be controlled based on the boundaryFB coefficient using a feed-forward control scheme or an open-loopcontrol scheme, since a change in the data FB coefficient may not affecta corresponding change in data value. The use of a feed-forward controlscheme for the data FB coefficient may reduce data errors.

In particular embodiments, equalizer-control logic includes anadaptation matrix. For example, the equalizer-control logic may forceresidual ISI toward zero by detecting residual ISI and integrating eachresidual ISI component with a different weight according to theadaptation matrix, where weight depends on at least the equalizer typeand the residual ISI. In particular embodiments, the equalizer-controllogic includes a vector of binary values representing the sign ofresidual ISI components. In particular embodiments for processingrecovered data output, equalizer-control logic includes a target ISIvector and subtracts the target ISI vector from the residual ISI vector.The target ISI vector may be, for example, the residual ISI vectorobserved in the best known state (with respect to bit-error rate (BER))for the worst-case transmission channel. In particular embodiments,equalizer-control logic may be compatible with any correlated datasequences, including monotone sequences (such as a repeated 0-1-0-1pattern).

The equalizer-control logic in FIG. 3 may be implemented using knowntechniques such as General Zero-Forcing or Gauss-Newton algorithms. WithGeneral Zero-Forcing algorithms, there is no optional target ISI vector(i.e. v=0), and the adaptation matrix is calculated as a Jacobian(derivative) matrix of the impulse response (or the residual ISI vector)of the worst-case channel and the equalizer combined together withrespect to the vector of equalizer control variables. For the worst-casechannel, it will minimize the sum of squares of the residual ISI in theequilibrium state. For other channels, the sum of squares of theresidual ISI is not necessarily minimized in the equilibrium state, butthe operating margin is usually bigger than the worst-case channel for awide range of channel characteristics. A problem of General Zero-Forcingis that it assumes linearity of the system, and the bit error rate (BER)is not necessarily minimized for the worst-case channel even if the sumof square of the residual ISI is minimized.

One or more of these problems may be solved by particular embodimentsusing an optional target ISI vector and a Gauss-Newton algorithm, wherethe target ISI vector is the residual ISI vector observed in the bestknown state (with respect to BER) for the worst-case channel. As inGeneral Zero-Forcing, the adaptation matrix is a Jacobian (derivative)matrix indexing an impulse response (or the residual ISI vector) for theworst-case channel, an equalizer-type, and a vector of equalizer-controlvariables. Contrary to the Jacobian (derivative) matrix used in GeneralZero-Forcing, the adaptation matrix indexes the impulse responseobserved in the best known state (with respect to BER) for theworst-case channel, whereas the Jacobian (derivative) matrix in theGeneral Zero-Forcing algorithm is thought to be state independentbecause General Zero-Forcing assumes linearity of the system. By usingthe target ISI vector and a Gauss-Newton algorithm, we may minimize BERin the equilibrium state for the worst-case channel.

In particular embodiments, equalizer-control logic uses a sign-basedmethod to implement a modified General Zero-Forcing or Gauss-Newtonalgorithm that realizes the same or similar results. In particularembodiments, the sign-based method is configured to achievestatistically equivalent results to the results of the GeneralZero-Forcing or Gauss-Newton algorithm in a long term. To implement thesign-based method, equalizer-control logic measures only signinformation, and may calculate the quantity for each component of theresidual ISI vector using only the sign information. Then,equalizer-control logic performs arithmetic and scalar operations usingthe residual ISI vector to generate equalizer parameters, as FIG. 3illustrates. The description below with respect to FIG. 16 furtherdescribes equalizer-control logic using a sign-based GeneralZero-Forcing method for adaptive equalizer control.

FIG. 4 illustrates an example pulse response at an output of an exampleLE and example data and boundary FB coefficients. The pulse response ofthe LE output at 1.0 UT of delay (h_(+1.0)) corresponds to the data FBcoefficient for 1.0 bit of prior data. The pulse response of the LEoutput at 1.5 UIs of delay (h_(+1.5)) corresponds to the boundary FBcoefficient for 1.5 bits of prior data. When the pulse response on andafter 2.0 UIs of delay is minimized as shown in FIG. 4, the datafeedback signal for 1.0 bit of prior data (h_(+1.0)) is spread into bothh_(+0.5) and h_(+1.5). In particular embodiments, the pulse response at1.5 UIs of delay (h_(+1.5)) is measured by adjusting the boundary FBcoefficient for 1.5 bits of prior data and observing the change in thepulse response at 1.5 UIs of delay (h_(+1.5)). In particularembodiments, the pulse response at 0.5 UIs of delay (h_(+0.5)) is notmeasured and is ignored because the effect of h_(+0.5) on boundary valueis cancelled or at least minimized by clock-recovery in a long term.Then, the pulse response at 1.0 UI of delay (h_(+1.0)) may be inferredas a scaled value of the pulse response at 1.5 UIs of delay (h_(+1.5)).The inferred pulse response at 1.0 UI of delay (h_(+1.0)) may be set asthe data FB coefficient for 1.0 bit of prior data.

In particular embodiments, this scheme may be implemented using a 2-tapDFE. For example, for a 2-tap data DFE, a 2-tap boundary DFE maygenerate a feedback signal at 1.5 UIs and 2.5 UIs of delay based on 1.5and 2.5 bits of prior data respectively. In particular embodiments, thepulse response at 1.5 UIs of delay (h_(+1.5)) may be measured byadjusting the first boundary FB coefficient for 1.5 bits of prior dataand observing the change in the pulse response at 1.5 UIs of delay(h_(+1.5)). The pulse response at 2.5 UIs of delay (h_(+2.5)) may bemeasured by adjusting the second boundary FB coefficient for 2.5 bits ofprior data and observing the change in the pulse response at 2.5 UIs ofdelay (h_(+2.5)). Then, the pulse response at 2.0 UIs of delay(h_(+2.0)) may be inferred as the average of the pulse response at 1.5UIs of delay (h_(+1.5)) and the pulse response at 2.5 UIs of delay(h_(+2.5)), i.e.,

$h_{+ n} = {\frac{h_{{+ n} - 0.5} + h_{{+ n} + 0.5}}{2}.}$

The inferred pulse response at 2.0 UIs of delay (h_(+2.0)) may be set asthe data FB coefficient for 2.0 bits of prior data.

In particular embodiments, this scheme may be implemented using amulti-tap DFE. For example, for an n^(th)-tap data DFE (n>1), ann^(th)-tap boundary DFE may generate a feedback signal at (n+0.5) UIsand (n−0.5) UIs of delay based on (n+0.5) and (n−0.5) bits of prior datarespectively. In particular embodiments, the residual ISI at (n+0.5) UIsof delay (h_(+n+0.5)) may be measured by adjusting the n^(th) boundaryFB coefficient for (n+0.5) bits of prior data and observing the changein the residual ISI at (n+0.5) UIs of delay (h_(+n+0.5)). The residualISI at (n−0.5) UIs of delay (h_(+n+0.5)) may be measured by adjustingthe (n−1)^(th) boundary FB coefficient for (n−0.5) bits of prior dataand observing the change in the residual ISI at (n−0.5) UIs of delay(h_(+n+0.5)). Then, the residual ISI at n UIs of delay (h+n) may beinferred as the average of the residual ISI at (n+0.5) UIs of delay(h_(+n+0.5)) and the residual ISI at (n−0.5) UIs of delay (h_(+n+0.5)).The inferred residual ISI at n UIs of delay (h+n) may be set as then^(th)-tap FB coefficient of the data DFE for n bits of prior data.

FIG. 5 illustrates an example speculative 1-tap DFE. The examplespeculative 1-tap DFE uses a speculative technique (also known as aloop-unrolling technique) to reduce residual ISI in the pulse responseat the DFE input. In particular embodiments, instead of generating areal analog feedback signal to apply to the DFE input before thedecision circuit as shown in FIGS. 2 and 3, two decision circuits may beused in parallel at the same timing. One decision circuit adds a FBcoefficient to the input, and another decision circuit subtracts the FBcoefficient from the input. After speculative decisions are made, one ofthe results may be chosen based on previously received data (1 bit ofprior data for data DFE or 1.5 bits of prior data for boundary DFE). Inparticular embodiments, the DFE input is a differential signal and theFB coefficient is a reference voltage. The polarity of the FBcoefficient is flipped by swapping the positive and negative signals ofthe reference voltage for the FB coefficient.

The example speculative 1-tap DFE illustrated in FIG. 5 provides anexample of an equalizer that applies compensation for distortion inparallel. Compensation for distortion may be applied in parallel in anysuitable manner (e.g., before or after distortion occurs) using anysuitable equalization technique (e.g., transmitter pre-emphasisequalization or receiver equalization) and any suitable equalizer (e.g.,an analog continuous-time first-order derivative filter, an analogcontinuous-time second-order derivative filter, a multi-tapfinite-impulse-response filter, a 1-tap DFE, a 2-tap DFE or a multi-tapDFE). In particular embodiments, compensation for distortion may beapplied in series in any suitable manner using any suitable equalizationtechnique and any suitable equalizer.

FIG. 6 illustrates an example LE. The LE includes two-stage differentialbuffers with capacitive and resistive degeneration. In particularembodiments, an LE parameter is adjusted by adjusting one of thedegeneration resistors. In particular embodiments, residual ISIoccurring after a particular UI of delay may be minimized by adjustingthe LE parameter and observing the change in the residual ISI. Anysuitable LE (such as, for example, a first or second order derivativefilter) may be used to reduce residual ISI occurring after a particularUI of delay.

FIG. 7 illustrates example residual boundary ISI in an example pulseresponse at an output of an example LE. While receiving a continuousdata sequence, the boundary value seen by the boundary DFE may berepresented as the convolution of the residual boundary ISI and the datasequence, as FIG. 8 shows. FIG. 8 illustrates example convolution of anexample residual boundary ISI and an example data sequence. As anexample and not by way of limitation, if the receiving data sequence is{D₀, D₁, D₂, D₃, D₄, D₅, D₆}, the boundary value E_(4.5) between D₄ andD₅ may be represented as E_(4.5) ^({D) ⁰ ^(,D) ¹ ^(,D) ² ^(,D) ³ ^(,D) ⁴^(,D) ⁵ ^(,D) ⁶^(})≈h_(−1.5)D₆+h_(−0.5)D₄+h_(+0.5)D₄+h_(+1.5)D₃+h_(+2.5)D₂+h_(+3.5)D₁+h_(+4.5)D₀,with additional terms for more distant data being omitted because theireffect is small.

In FIG. 8, the data points of the data sequence D include D₀, D₁, D₂,D₃, D₄, D₅, and D₆. The boundary points are illustrated as darkenedcircles on either side of the unfilled circles. Clock-recovery orequalizer-control logic may sample the recovered data output at a datapoint to generate a data value (e.g. D₀-D₆) and at a boundary point togenerate a boundary value (e.g. E_(0.5)-E_(5.5)). Each sampled datavalue and boundary value may be a low value, a high value, or a randomvalue that randomly takes a high value or a low value. In particularembodiments, a low value is a “0,” a high value is a “1,” a random valueis either a “0” or a “1,” and an average of random values is “0.5.” Inparticular embodiments, a low value is a “−1,” a high value is a “1,” arandom value is either a “−1” or a “1,” and an average of random valuesis “0.” A change from a high to a low value or from a low to a highvalue between two successive data values is a transition. In FIG. 8,transitions occur between low data value D4 and high data value D5,between high data value D0 and low data value D1, between low data valueD1 and high data value D2, and between high data value D2 and low datavalue D3. In a signal exhibiting no residual ISI effects, each boundaryvalue between two successive data values with opposite values istypically a random value. For such a signal, the equalizer-control logicmay adjust the gain applied to the DFE input up or down randomly, as ISIeffects are already being fully compensated or do not exist. If thenumber of up adjustments substantially equals the number of downadjustments, the gain applied to the input signal may remain, onaverage, at the same level. If the number of up adjustments does notsubstantially equal the number of down adjustments, the gain applied tothe input signal may drift slightly from its initial level. Such driftof the gain level may produce slight residual ISI. The equalizer-controllogic may detect this ISI and adjust the gain back to the averageinitial level.

In particular embodiments, an equalizer may control more than oneindependent parameter, such as, for example, the unmodified,first-order-derivative, and second-order-derivative components of asignal. Generally, “first-order-derivative” components are the result ofa “first-order-derivative” operation, which uses any suitable electroniccomponent or collection of components or circuitry, such as, forexample, a high-pass filter, to produce an output that is linearlyproportional to the first-order derivative of an incoming signal withrespect to time. According to particular embodiments, a derivativeoperation takes the derivative of an incoming signal with respect totime, such as, for example, the voltage change of the incoming signalper 100 pico-seconds. Derivative operations may be applied to a signalonce or multiple times, resulting in an output signal that isproportional to the first, second, third, or higher order derivative ofthe incoming signal with respect to time based on the number of timesthe derivative operation is applied. Examples of multiparameter (ormultidimensional) equalizers include 2-tap DFEs, which may independentlycontrol a first control parameter and a second control parameter, and3-tap finite impulse response (FIR) filters, which may independentlycontrol a second control parameter and a third control parameter. Thepresent disclosure contemplates any suitable multidimensional equalizer.In particular embodiments, compensation is adjusted independently foreach independent equalizer parameter. Adaptive equalizer control may beapplied to a first control parameter independently by adjusting thefirst control parameter while the other control parameters remain fixed.In a 2-tap DFE, for example, the first- and second-tap coefficients maybe adjusted independently, and each of these adjustments may comprise anadjustment to the compensation for distortion. Alternatively,multidimensional equalizers may adjust compensation according to morethan one control parameter at the same time (in the aggregate) byadjusting compensation according to a particular function thatincorporates more than one independent parameter.

Compensation for distortion (such as, for example, gain) may be adjustedindependently for each independent control parameter based on particularrelationships between a sampled boundary value that is betweensuccessive data values that resulting in a transition and one or moresampled data values before or after the boundary value in particulartimings. Particular relationships may correspond to particular types ofISI for particular independent equalizer parameters. When, for example,an adaptive equalizer-control system detects such relationships among asampled boundary value and sampled data values (e.g. using predefineddata-value patterns) adaptive equalizer control may be adjusted byadjusting the one or more particular independent equalizer parameters.

In particular embodiments, the predefined data value patterns used bythe adaptive equalizer-control system to compare with the incomingstream of sampled data values may be sensitive to ISI for particularindependent control parameters. These patterns may be selected, forexample, based on the sensitivity of the boundary value between datavalues resulting in a transition to the independent control parameterbeing adjusted. In particular embodiments, these patterns may beselected based on the partial derivative of the pulse response at thatindependent control parameter (e.g., on the sign or magnitude of thepartial derivative) because the boundary value seen by the decisioncircuit in the boundary DFE may be represented as a convolution of theresidual boundary ISI and the data sequence, as FIG. 8 shows.

FIG. 9 illustrates example detection of residual boundary ISI based onone or more data-value differences between two data sequences. Inparticular embodiments, residual boundary ISI may be measured by takinga difference in boundary values between two data sequences which havedifferent data values in the data bits corresponding to the residualboundary ISI to be measured. In the illustrated example, h_(+1.5) ismeasured by taking a difference in boundary values E_(4.5) between D₄and D₅ for two data sequences which have different data values at D₃.Data values D₀, D₁, D₂, D₄, D₅ and D₆ are the same for both datasequences. Each data value and boundary value may comprise a low value,a high value, or a random value that takes either a high value or a lowvalue randomly. In particular embodiments, each data value and boundaryvalue may comprise a quantity, which may be measured, for example, atfull-range precision analog level. In particular embodiments, only thesign (not the quantity) of the boundary values is used to measure theboundary-value differences.

In particular embodiments, residual boundary ISI may be measured for itssign and for its magnitude to some degree by taking statisticaldifferences of the binary boundary values for the two data sequences aslong as the binary boundary values are not statistically saturated. Forexample, the probabilities of +1 (or −1) boundary values are the samefor the two data sequences in FIG. 9, if and only if the residualboundary ISI h_(+1.5) is absolutely zero. Otherwise, the probability of+1 boundary values is higher (or lower) for the data sequence with D₃equal to +1 than the data sequence with D₃ equal to −1, depending onwhether the residual boundary ISI at 1.5 UIs of delay (h_(+1.5)) ispositive or negative. The amount of statistical difference indicates themagnitude of the residual boundary ISI at 1.5 UIs of delay (h_(+1.5)).

If the binary boundary values are statistically saturated, thedifference in binary boundary values between the two data sequences iszero and thus cannot be used to measure residual boundary ISI. Toprevent statistical saturation of the binary boundary values between thetwo data sequences, the number of high values present in the other datavalues (e.g. D₀, D₁, D₂, D₄, D₅ and D₆ in FIG. 9) used to calculate thedifference in boundary values between the two data sequences is close to(and thus balanced with) the number of low values present in the otherdata values (e.g. D₀, D₁, D₂, D₄, D₅ and D₆ in FIG. 9) used to calculatethe difference in boundary values between the two data sequences. Bywatching for various filter patterns in a balanced manner, adaptiveequalizer control may become more independent of incoming datasequences. For example, there may be some data dependency for someperiodic or quasi-periodic data sequences where a periodic orquasi-periodic data sequence does not include one or some of the filterpatterns at all. In such a case, one scheme may be to wait for thefilter pattern expecting that the current incoming data sequence changesat some point in the future. Another scheme may be to skip filterpatterns that may not appear in the current incoming data sequence.

In particular embodiments, D₄ and D₅ must have different data values tomake a transition at E_(4.5) where a boundary value E_(4.5) is measured.If D₄ and D₅ have the same value, the binary boundary value E_(4.5) iscompletely statistically saturated, because E_(4.5) always takes thesame value as D₄ and D₅. The boundary value E_(4.5) is not statisticallysaturated, only if D₄ and D₅ have different values and there is a datatransition at E_(4.5).

In particular embodiments, balanced application of adaptive controlactions enables adaptive control algorithms to provide consistentadaptation results among various data sequences. Balanced application ofadaptive control actions may be achieved by selecting data sequences forthe adaptive control actions. In particular embodiments, if datasequences observed during adaptation are limited, the data sequences forresidual ISI detection must be chosen from those data sequences observedduring adaptation. For example, adaptive control applied for 10GBASE-CX4 starts with the 8B10B idle data sequence which consists ofonly 8B10B /A/, /K/, /S/ symbols because the initial incoming datasequence at start up may be an idle data sequence. It may be desirableto avoid data sequences which do not appear in the 8B10B idle datasequence, at least during link initialization. Otherwise, the link willnot start up. Once initialization is complete, equalizer-control logicmay use data sequences that appear in real data traffic, not idle datasequences.

FIG. 10 illustrates example statistical detection of residual boundaryISI using two data sequences. In particular embodiments, data pattern Hand L have different values in the data bits corresponding to theresidual boundary ISI to be measured. FIG. 10 illustrates an examplemethod for statistically detecting residual ISI using two datasequences. This method includes calculating a difference between the twodata sequences. In particular embodiments, it is advantageous to useonly one data sequence to detect boundary residual ISI in an aggregatemanner. To use one data sequence, the example method shown in FIG. 10may be modified to include the portion related to data pattern H and notinclude the portion related to data pattern L.

FIG. 11 illustrates two example data sequences for detecting exampleresidual boundary ISI at 1.5 UIs of delay (h_(+1.5)). Herein, the terms“pattern” and “sequence” may be used interchangeably, where appropriate.Since data patterns H and L are watched for alternatively, two datapatterns are taken into account the same number of times over a longterm. In particular embodiments, the two data patterns behave inopposite regarding the polarity of boundary values. In particularembodiments, the statistical difference of the boundary values betweentwo data patterns which are taken into account the same number of timesmay correspond to the actual difference over a long term for anyincoming data sequence, even if data pattern H is received much morefrequently than data pattern L.

In particular embodiments, the above scheme may be extended to detecttwo or more components of residual ISI in an aggregate manner. Inparticular embodiments, this aggregate detection scheme uses two datapatterns which have different data values in the data bits correspondingto the residual ISI components to be measured in an aggregate manner.For example, h_(+2.5) and h_(+3.5) may be detected together as shown inFIG. 12. Aggregate residual boundary ISI (h_(+2.5)*2+h_(+3.5)*2) ismeasured by taking a difference in boundary values E_(4.5) between twodata sequences which have different data values in the data bitscorresponding to data bits D₁ and D₂. Data values D₀, D₃, D₄, D₅ and D₆are the same for both data sequences. Aggregate detection of two or morecomponents of residual ISI may be especially useful where various typesof data sequences are not observed during adaptation. Aggregatedetection of two or more components of residual ISI may also beespecially useful for detecting components of residual ISI with morethan a certain amount of delay because there is no discrete control overcomponent residual ISI by an LE and because a sum of component residualISIs may be sufficient for adaptive control of an LE.

FIG. 13 illustrates example detection of two or more components ofresidual ISI in an aggregate manner. This aggregate detection schemeuses two data patterns and is based on the boundary values between twosuccessive transitions, where the transitions occur at the same time forboth data patterns. In particular embodiments, two data sequences havedifferent values only at one data bit D₃, and two successive boundaryvalues at E_(4.5) and E_(5.5) are detected at the same time. Theaggregate residual boundary ISI h_(+1.5) and h_(+2.5) are detected whenboth E_(4.5) and E_(5.5) are positive or negative. When E_(4.5) andE_(5.5) have different values, it may indicate phase error. Inparticular embodiments, when E_(4.5) and E_(5.5) have different values,detection is skipped altogether instead of separately detecting h_(+1.5)from E_(4.5) and h_(+2.5) from E_(5.5). By skipping detection in thisscenario, the detection of residual boundary ISI may become more robustfor jitter.

FIG. 14 illustrates example aggregate detection of multiple componentsof residual boundary ISI using one data sequence. As illustrated, theboundary value is observed for only one data sequence{−1,+1,−1,+1,+1,−1,−1}. In particular embodiments, the residual boundaryISI at 0.5 UIs of delay (h_(+0.5) and h_(+0.5)) is not measured and isignored because the effect of h_(+0.5) and h_(+0.5) on boundary value iscancelled or at least minimized by clock-recovery in a long term. Amongthe remaining terms, h_(+1.5) has the primary effect, and the otherterms have secondary effects. Since h_(−1.5) is usually small, E_(4.5)^({−1,+1,−1,+1,+1,−1,−1}) is close to the value of h_(+1.5), when theboundary values at h_(+2.5) and later are minimized by the LE. In orderto measure the optimal value of h_(+1.5) with the optimal LE parameterwhich minimizes the boundary values at h_(+2.5) and later, using E_(4.5)^({−1,+1,−1,+1,+1,−1,−1}) instead of using two data sequences to detecth_(+1.5) may be advantageous, for example, because E_(4.5)^({−1,+1,−1,+1,+1,−1,−1}) is still close to the optimal value ofh_(+1.5) even if the LE parameter is not optimal and the terms on andafter h_(+2.5) are not fully minimized by LE. In particular embodiments,the current value of h_(+1.5) may be largely affected by the LEparameter. For example, in E_(4.5) ^({−1,+1,−1,+1,+1,−1,−1}), h_(+1.5)and h_(+3.5) are positive and h_(+2.5) and h_(+4.5) are negative, andthe effect of LE parameter change is cancelled between these terms. Inparticular embodiments, DFE FB coefficient control may be less affectedby LE parameter control where E_(4.5) ^({−1,+1,−1,+1,+1,−1,−1}) is usedto control a DFE FB coefficient than where h_(+1.5) is used to controlthe DFE FB coefficient. For example, DFE FB coefficient control may beless affected by LE parameter control where two control loops aredecoupled or orthogonalized with each other than where two control loopsare coupled with each other. In particular embodiments, independentcontrols of the DFE FB coefficient and the LE parameter are moreadvantageous regarding to the convergence speed and the control loopstability than dependent controls of the DFE FB coefficient and the LEparameter. It may also be advantageous when various types of datasequences are not observed during adaptation period because it uses alower number of data patterns.

FIG. 15 illustrates example sets of data sequences (or patterns) fordetecting an individual residual boundary ISI component. In particularembodiments, it may be advantageous to switch between more than one setof data patterns which detect the same one or more components ofresidual ISI. Those multiple sets may be used in sequence or in randomorder. For example, the residual ISI of h_(+2.5) may be detected byeither set of data patterns shown in FIG. 15. In the illustratedembodiment, all values are inverted between pattern set R and patternset F. In particular embodiments, using pattern set R and Falternatively or randomly reduces the effect of residual offset onresidual ISI detection. In particular embodiments, it may be alsoadvantageous to switch between one set of data patterns starting at aneven bit and another set of data patterns starting at an odd bit. Inparticular embodiments, balancing the use of data patterns starting atan even bit and data patterns starting at an odd bit reduces the effectof duty-cycle distortion on residual ISI detection. In particularembodiments, when detecting an individual residual ISI component usingtwo data patterns, steps may be taken to balance the number ofoperations between residual ISI components (and optionally betweenequalizer control variables).

FIG. 16 illustrates example equalizer-control logic using an examplesign-based method. The example equalizer-control logic uses a sign-basedmethod to implement a modified General Zero-Forcing or Gauss-Newtonalgorithm that realizes the same or similar results. In particularembodiments, the sign-based method of FIG. 16 is configured to achievestatistically equivalent results to the results of the GeneralZero-Forcing or Gauss-Newton algorithm in a long term. The descriptionabove with respect to FIG. 3 further describes equalizer-control logicusing a conventional General Zero-Forcing method for adaptive equalizercontrol and an example sign-based General Zero-Forcing method foradaptive equalizer control. The sign-based method does not measure thequantity of residual ISI. The sign-based method uses sign of residualISI in a binary form and performs scalar and arithmetic operationsinstead of matrix multiply and vector operations. Residual ISI detectors1 through 5 detect sign of residual ISI using the sign-based method.Residual ISI detectors 1 through 5 may switch between multiple sets ofdata patterns. Each residual ISI detector may be programmed to detectresidual ISI using any data patterns, data sequences or sets of datapatterns or data sequences in any format. Each residual ISI detector mayutilize and switch between any interface modes and applications ofadaptive control actions and operate during and switch between anyperiods of operation, such as during initialization, afterinitialization, and in use, because there may be different requirementssuch as available data patterns for adaptation and desired (or required)level of optimization. The sign-based method is more efficient andrequires less hardware than adaptive control using conventional GeneralZero-Forcing or Gauss-Newton algorithms that measure quantity ofresidual ISI and perform matrix multiplication and vector operations.The sign-based method adds or subtracts weight to the control variabledepending on the sign of residual ISI. In the sign-based method,magnitude of W^((p)) and W^((n)) are equivalent, and thus particularembodiments of the sign-based method do not use a target ISI vector. Inparticular embodiments, weight may be calculated from a derivative ofthe average of the binary residual ISI for the worst-case channel withrespect to the equalizer control variable. In particular embodiments,the sign-based method balances the number of operations between residualISI components (and optionally between equalizer control variables). Inparticular embodiments, the sign-based method may be implemented by anyequalizer, including any two-dimensional equalizer, any DFE and any LE,such as a continuous-time linear equalizer (CTLE) for any equalizerparameter.

FIG. 17 illustrates example operation of an example column balancer. Thecolumn balancer selects one residual ISI detector at a time, andprocesses two results (i.e., one for data pattern H and another for datapattern L in FIG. 10) from the selected residual ISI detector. If theresidual ISI detector uses multiple sets of data patterns, it firstsynchronizes with the residual ISI detector after selection of theresidual ISI detector so that the two results being processed are forthe same set of data patterns. Synchronization may be done by waitinguntil the residual ISI detector is looking for the data pattern H (thefirst data pattern). After the column balancer processes two resultsfrom the selected residual ISI detector, the column balancer selects anext residual ISI detector in sequence or at random. In particularembodiments, in a long term, the column balancer guarantees that resultsfrom each residual ISI detector are taken into account for the samenumber of times. This is guaranteed for any incoming data sequence, evenif data patterns for one residual ISI detector are quite often, whereasdata patterns for another residual ISI detector are very rare.

As illustrated in FIG. 16, in particular embodiments, when a residualISI detector selected by the column balancer detects residual ISI, theweight selector reads out a weight value from a three dimensional weightregister file indexed by the integrator (row), the residual ISI detector(column), and the sign of detected residual ISI (sign). Then, the weightvalue is integrated to generate the value of the control variable, whichis either the LE parameter or the boundary FB coefficient. The weightregister file may be programmed to contain information equivalent to theadaptation matrix and the target ISI vector, of which FIG. 3 illustratesexamples. In particular embodiments, an adaptation matrix M and anoptional target ISI vector v may be defined in FIG. 3 as follows:

$M = \begin{Bmatrix}m_{1,1} & m_{1,2} & m_{1,3} & m_{1,4} & m_{1,5} \\m_{2,1} & m_{2,2} & m_{2,3} & m_{2,4} & m_{2,5}\end{Bmatrix}$ $v = \begin{Bmatrix}v_{1} & v_{2} & v_{3} & v_{4} & v_{5}\end{Bmatrix}^{t}$

To generate results that are equivalent to those generated using theadaptation matrix M and the optional target ISI vector v in FIG. 3, thethree dimensional weight register file indexed by the integrator (row),the residual ISI detector (column), and the sign of detected residualISI (sign) in FIG. 16 may be programmed as follows:

$W^{(p)} = \begin{Bmatrix}w_{1,1}^{(p)} & w_{1,2}^{(p)} & w_{1,3}^{(p)} & w_{1,4}^{(p)} & w_{1,5}^{(p)} \\w_{2,1}^{(p)} & w_{2,2}^{(p)} & w_{2,3}^{(p)} & w_{2,4}^{(p)} & w_{2,5}^{(p)}\end{Bmatrix}$ $W^{(n)} = \begin{Bmatrix}w_{1,1}^{(n)} & w_{1,2}^{(n)} & w_{1,3}^{(n)} & w_{1,4}^{(n)} & w_{1,5}^{(n)} \\w_{2,1}^{(n)} & w_{2,2}^{(n)} & w_{2,3}^{(n)} & w_{2,4}^{(n)} & w_{2,5}^{(n)}\end{Bmatrix}$ w_(r, c)^((p)) = +K × m_(r, c) × (1 − v_(c))w_(r, c)^((n)) = −K × m_(r, c) × (1 + v_(c))

In this example, W^((p)) is the weight matrix for positive residual ISI,W^((n)) is the weight matrix for negative residual ISI, and K is anarbitrary small positive number (0<K<<1).

The following shows how these are equivalent. First, assume that aresidual ISI detector c generates N_(c) ^((p)) positive results andN_(c) ^((n)) negative results in N times of residual ISI detection bythe residual ISI detector c. In particular embodiments, N is a largepositive integer.

N _(c) ^((p)) +N _(c) ^((n)) =N

Then, the residual ISI vector q of which an example is illustrated inFIG. 3 is expressed as follows:

$q = \begin{Bmatrix}q_{1} & q_{2} & q_{3} & q_{4} & q_{5}\end{Bmatrix}^{t}$ $q_{c} = \frac{N_{c}^{(p)} - N_{c}^{(n)}}{N}$

The error vector e and the update vector u in FIG. 3 may be expressed,for example, as follows:

$\begin{matrix}{e = \begin{Bmatrix}e_{1} & e_{2} & e_{3} & e_{4} & e_{5}\end{Bmatrix}^{t}} \\{= {q - v}}\end{matrix}$ $\begin{matrix}{e_{c} = {q_{c} - v_{c}}} \\{= {\frac{N_{c}^{(p)} - N_{c}^{(n)}}{N} - v_{c}}}\end{matrix}$ $\begin{matrix}{u = \begin{Bmatrix}u_{1} & u_{2}\end{Bmatrix}^{t}} \\{= {M \times e}} \\{= {M \times \left( {q - v} \right)}}\end{matrix}$ $\begin{matrix}{u_{r} = {\sum\limits_{c = 1}^{5}{m_{r,c} \times e_{c}}}} \\{= {\sum\limits_{c = 1}^{5}{m_{r,c} \times \left( {\frac{N_{c}^{(p)} - N_{c}^{(n)}}{N} - v_{c}} \right)}}}\end{matrix}$

The cumulative sum of weights for the integrator r in FIG. 16 while Nresults are processed for each residual ISI detector may be expressed,for example, as:

$\begin{matrix}{{\hat{u}}_{r} = {{\sum\limits_{c = 1}^{5}{w_{r,c}^{(p)} \times N_{c}^{(p)}}} + {w_{r,c}^{(n)} \times N_{c}^{(n)}}}} \\{= {\sum\limits_{c = 1}^{5}{K \times m_{r,c} \times \left\{ {{\left( {1 - v_{c}} \right) \times N_{c}^{(p)}} - {\left( {1 + v_{c}} \right) \times N_{c}^{(n)}}} \right\}}}} \\{= {\sum\limits_{c = 1}^{5}{K \times m_{r,c} \times \left\{ {N_{c}^{(p)} - N_{c}^{(n)} - {v_{c} \times \left( {N_{c}^{(p)} + N_{c}^{(n)}} \right)}} \right\}}}} \\{= {\sum\limits_{c = 1}^{5}{K \times m_{r,c} \times \left\{ {N_{c}^{(p)} - N_{c}^{(n)} - {v_{c} \times N}} \right\}}}} \\{= {{KN}{\sum\limits_{c = 1}^{5}{m_{r,c} \times \left( {\frac{N_{c}^{(p)} - N_{c}^{(n)}}{N} - v_{c}} \right)}}}} \\{= {{KN} \times u_{r}}}\end{matrix}$

These two systems are equivalent when

$N = {\frac{1}{K}.}$

Since K is a small positive number, a large number N which makes twosystems statistically equivalent exists.

In particular embodiments, the target ISI vector v is zero and not used,meaning that W^((p))=−W^((n)) and the difference between these weightmatrices is zero and need not be recorded. The amount of hardware may bereduced, for example, by using a 2-dimensional weight register filewhich holds a value of W=W^((p))=−W^((n)), and selecting addition orsubtraction by the sign of detected residual ISI. Weight may becalculated from a derivative of the average of the binary residual ISIfor the worst-case channel with respect to the equalizer controlvariable. In particular embodiments, the sign-based method balances thenumber of operations between residual ISI components (and optionallybetween equalizer control variables).

In particular embodiments, W^((p)) and W^((n)) have different magnitudesand the magnitudes may be recorded in a 3-dimensional register file inorder to implement the optional target ISI vector v. First, an optionaltarget ISI vector v may be selected based on the average of the binaryobservation variable in the target state for the worst case. Second, anadaptation matrix M may be calculated from a derivative of the averageof the binary observation variable with respect to the control variablein the target state for the worst case. Third, weight matrices ofW^((p)) and W^((n)) may be calculated from the optional target ISIvector v and the adaptation matrix M with a small loop constant Kaccording to the above formulas. These parameters minimizes squares ofdifference between the average of the binary observation variable andthe optional target ISI vector in the equilibrium state for the worstcase.

In particular embodiments, the amount of increase (or decrease) appliedto a binary observation variable is equivalent, and the average of aparticular binary observation variable is zero in the equilibrium state.U.S. Patent Application Publication No. 2007/0280389, entitled Systemand Method for Asymmetrically Adjusting Compensation Applied to a Signaland published 6 Dec. 2007, which is incorporated herein by reference,discloses changing the equilibrium state from such a state to a nextstate where the average of the binary observation variable is a non-zerotarget value. For example, where there is a single control variable anda single binary observation variable and amount of increase and decreaseof the control variable according to the binary observation variable isdifferent, the average of the binary observation variable alwaysconverges to the non-zero target value in the equilibrium state.

In particular embodiments, where there are single or multiple controlvariables and multiple binary observation variables, the number ofbinary observation variables is larger than the number of controlvariables. In particular embodiments, where the amount of increase anddecrease is equivalent, the sum of the squares of the average of eachbinary observation variable is minimized in the equilibrium state for acertain condition. In particular embodiments, where the amount ofincrease and decrease is different, the equilibrium state is changedfrom such a state to a next state where the sum of the squares of thedifference between the average of each binary observation variable and atarget value of the observation variable is minimized for the certaincondition. Particular embodiments including single or multiple equalizercontrol variables and multiple binary observation variables balance thenumber of operations between binary observation variables (andoptionally between equalizer control variables). Herein, reference to“equalizer control variables” may encompass equalizer parameters, andvice versa, where appropriate.

FIG. 18 illustrates example adaptive equalizer control based on examplelevel error. Amplitude error (“reference-level error” or “level-error”)is used instead of the boundary value for adaptive control. Thelevel-error decision latch (D/L) subtracts a target level, which is theproduct of a data value and a reference level from the pre-decisionlevel of the data DFE, and produces a sign of level-error, either +1 or−1. In particular embodiments, the level-error D/L may use a speculativeor loop-unrolling technique similar to FIG. 5, for example, to solve thetiming constraint. In particular embodiments, the level-error D/L uses atime multiplexing technique to decrease hardware resources, which may beincreased by unrolling feedback loops.

FIG. 19 illustrates example residual data ISI in an example pulseresponse at an output of an example LE. The residual data ISI at timezero (h_(+0.0)) represents the difference of the pulse height at timezero (H) and the reference level (Reflvl). At all other times, forexample, at the other times illustrated, the residual data ISI is thesame as the pulse response level. As described with respect to FIG. 8, aboundary value may be represented as a convolution of residual boundaryISI and a data sequence. Similarly, a data value may be represented as aconvolution of residual data ISI and a data sequence. FIG. 20illustrates example convolution of example residual data ISI and anexample data sequence. In particular embodiments, when receiving acontinuous data sequence, level-error seen by the decision circuit inthe level-error D/L is represented as a convolution of residual data ISIand the data sequence as shown in FIG. 20.

FIG. 21 illustrates example detection of residual data ISI based on oneor more differences in level-error values between two data sequences. Asillustrated, h_(+1.0) is measured by taking a difference in thelevel-error values at D₄ for two data sequences which have differentvalues at D₃. Residual data ISI may be measured by taking a differencein the level-error values for two data sequences which have differentvalues in the data bits corresponding to the residual data ISI to bemeasured. While level-error values may be measured as full-rangeprecision analog level, the illustrated embodiment may be used tomeasure residual data ISI, including the sign and magnitude to someextent of the residual data ISI, using only binary level-error values,either +1 or −1, instead of precision analog levels. The statisticaldifference between the binary level-error values for the two datasequences may be used to measure the sign and magnitude to some extentof the residual data ISI as long as the binary level-error values arenot statistically saturated. For example, the probabilities of positive(“+1”) level-error values are exactly same for the two data sequence inFIG. 21, if and only if the residual data ISI h_(+1.0) is absolutelyzero. As another example, the probabilities of negative (“−1”)level-error values are exactly same for the two data sequence in FIG.21, if and only if the residual data ISI h_(+1.0) is absolutely zero. Ifthe residual data ISI at h_(+1.0) is not zero, the probability ofpositive (or negative) level-error value is higher (or lower) for thedata sequence with D₃=+1 than D₃=−1, depending on whether the residualdata ISI h_(+1.0) is positive or negative. The amount of statisticaldifference indicates the magnitude of the residual data ISI h_(+1.0).

The detection of residual boundary ISI as described and illustrated bythe present disclosure with respect to particular embodiments may beapplicable to detecting residual data ISI or level-error values, whereappropriate. The detection of residual data ISI or level-error values asdescribed and illustrated by the present disclosure with respect toparticular embodiments may be applicable to detecting residual boundaryISI. Although the present disclosure describes two-dimensional controlfor one parameter LE and one tap DFE, the present disclosurecontemplates any suitable adaptive control of any suitable number of anysuitable parameters of (for example) continuous-time LEs, multi-tap DFEsor multi-tap FIR filters, or pre-emphasis parameters using multi-tap FIRfilters.

An adaptive equalizer control system may include any suitable type ofmemory. The memory may be used to store phase delay settings, phasecodes, target level-error values, target residual boundary and data ISIvalues, adaptation matrix, rows, columns, signs, parameters, inputsignals, output signals. Such values may correspond to user oradministrator specified values that may be entered into a database thatmay be accessed by the memory.

As an example and not by way of limitation, an adaptive equalizercontrol system may provide functionality as a result of a processorexecuting software embodied in one or more tangible, computer-readablemedia, such as a memory. A computer-readable medium may include one ormore memory devices, according to particular needs. Main memory may readthe software from one or more other computer-readable media, such asmass storage device or from one or more other sources via communicationinterface. The software may cause processor to execute particularprocesses or particular steps of particular processes described herein.In addition or as an alternative, the computer system may providefunctionality as a result of logic hardwired or otherwise embodied in acircuit, which may operate in place of or together with software toexecute particular processes or particular steps of particular processesdescribed herein. Reference to software may encompass logic, and viceversa, where appropriate. Reference to a computer-readable media mayencompass a circuit (such as an integrated circuit (IC)) storingsoftware for execution, a circuit embodying logic for execution, orboth, where appropriate. The present disclosure encompasses any suitablecombination of hardware and software.

FIG. 22 illustrates an example method for adaptive control of a DFE. Themethod begins at step 2202, where a first one of one or more data FBtaps in a data DFE delays a first output signal of a first decisioncircuit in the data DFE by approximately 1.0 unit intervals (UIs). Thefirst output signal includes data values recovered by the first decisioncircuit from an input signal from a receiver. At step 2204, the firstone of data FB taps multiplies the 1.0-UI-delayed first output signal bya first data FB coefficient derived from a first boundary FBcoefficient. At step 2206, a first one of one or more boundary FB tapsin a boundary DFE delays the first output signal by approximately 1.5UIs. At step 2208, the first one of the boundary FB taps multiplies the1.5-UI-delayed first output signal by the first boundary FB coefficient,with the first boundary FB coefficient corresponding to residualintersymbol interference (ISI) at approximately 1.5 UIs of delay in theinput signal, at which point the method ends. Particular embodiments maycontinuously repeat the steps of the method of FIG. 22, according toparticular needs. Although the present disclosure describes andillustrates particular steps of the method of FIG. 22 as occurring in aparticular order, the present disclosure contemplates any suitable stepsof the method of FIG. 22 occurring in any suitable order. Although thepresent disclosure describes and illustrates particular componentscarrying out particular steps of the method of FIG. 22, the presentdisclosure contemplates any suitable components carrying out anysuitable steps of the method of FIG. 22.

FIG. 23 illustrates an example method 2300 for detecting residual ISIcomponents using two data patterns. The method begins at step 2302,where one or more circuit components access an input signal from areceiver. In particular embodiments, the input signal includes a seriesof bits and residual ISI. At step 2304, the circuit components identifya first bit sequence and a first error associated with the first bitsequence in the input signal. At step 2306, the circuit componentsidentify a second bit sequence and a second error associated with thesecond bit sequence in the input signal that differs from the first bitsequence with respect to one or more data values of one or more bits inthe first and second bit sequences. The one or more data valuescorrespond to particular residual ISI for measurement. At step 2308, thecircuit components determine a difference between the first errorassociated with the first bit sequence and the second error associatedwith the second bit sequence. At step 2310, the circuit componentsmeasure the particular residual ISI by the difference, at which pointthe method ends. Particular embodiments use the particular residual ISImeasurement for adaptive equalizer control. Particular embodiments maycontinuously repeat the steps of the method of FIG. 23, according toparticular needs. Although the present disclosure describes andillustrates particular steps of the method of FIG. 23 as occurring in aparticular order, the present disclosure contemplates any suitable stepsof the method of FIG. 23 occurring in any suitable order. Although thepresent disclosure describes and illustrates particular componentscarrying out particular steps of the method of FIG. 23, the presentdisclosure contemplates any suitable components carrying out anysuitable steps of the method of FIG. 23.

FIG. 24 illustrates an example method for sign-based generalzero-forcing adaptive equalizer control. The method begins at step 2402,where one or more residual ISI detectors receive from a DFE a datasignal or an error signal comprising residual ISI. At step 2404, theresidual ISI detector produces a first output signal indicating whetherthe residual ISI has a positive sign or a negative sign. At step 2406,one or more column balancers select from among the first output signalsone of the first output signals to produce a second output signal. Atstep 2408, one or more weight selectors access from among multipleweight values one of the weight values for a received one of the secondoutput signals. The accessed one of the weight values corresponds to thecolumn balancer that produced the second output signal and the residualISI detector that produced the selected one of the first output signalsto produce the second output signal. The accessed one of the weightvalues has a magnitude that is substantially independent of the sign ofthe residual ISI indicated by the selected one of the first outputsignals to produce the second output signal. At step 2410, the weightselector produces a third output signal based on the accessed one of theweight values and the sign of the residual ISI indicated by the selectedone of the first output signals, at which point the method ends.Particular embodiments use the third signal to produce one or morefourth output signals representing one or more control variables for oneor more equalizers. Particular embodiments may continuously repeat thesteps of the method of FIG. 24, according to particular needs. Althoughthe present disclosure describes and illustrates particular steps of themethod of FIG. 24 as occurring in a particular order, the presentdisclosure contemplates any suitable steps of the method of FIG. 24occurring in any suitable order. Although the present disclosuredescribes and illustrates particular components carrying out particularsteps of the method of FIG. 24, the present disclosure contemplates anysuitable components carrying out any suitable steps of the method ofFIG. 24.

FIG. 25 illustrates an example method for multidimensional asymmetricbang-bang control. The method begins at step 2502, where one or moreresidual ISI detectors receive from a DFE a data signal or an errorsignal comprising residual ISI. At step 2504, the one or more residualISI detectors produce a first output signal indicating whether theresidual ISI has a positive sign or a negative sign. At step 2506, theone or more column balancers select from among the first output signalsone of the first output signals to produce a second output signal. Atstep 2508, one or more weight selectors access from among multipleweight values one of the weight values for a received one of the secondoutput signals. The accessed one of the weight values corresponds to thecolumn balancer that produced the second output signal, the residual ISIdetector that produced the selected one of the first output signals toproduce the second output signal, and the sign of the residual ISIindicated by the selected one of the first output signals to produce thesecond output signal. The accessed one of the weight values has amagnitude that depends on the sign of the residual ISI indicated by theselected one of the first output signals to produce the second outputsignal. At step 2510, the weight selector produces a third output signalbased on the accessed one of the weight values, at which point themethod ends. Particular embodiments use the third signal to produce oneor more fourth output signals representing one or more control variablesfor one or more equalizers. Particular embodiments may continuouslyrepeat the steps of the method of FIG. 25, according to particularneeds. Although the present disclosure describes and illustratesparticular steps of the method of FIG. 25 as occurring in a particularorder, the present disclosure contemplates any suitable steps of themethod of FIG. 25 occurring in any suitable order. Although the presentdisclosure describes and illustrates particular components carrying outparticular steps of the method of FIG. 25, the present disclosurecontemplates any suitable components carrying out any suitable steps ofthe method of FIG. 25.

The present disclosure encompasses all changes, substitutions,variations, alterations, and modifications to the example embodimentsdescribed herein that a person having ordinary skill in the art wouldcomprehend. Similarly, where appropriate, the appended claims encompassall changes, substitutions, variations, alterations, and modificationsto the example embodiments described herein that a person havingordinary skill in the art would comprehend.

1. A system comprising: one or more residual intersymbol interference(ISI) detectors that are each configured to receive from a decisionfeedback equalizer (DFE) a data signal or an error signal comprisingresidual ISI and produce a first output signal indicating whether theresidual ISI has a positive sign or a negative sign; one or more columnbalancers that are each configured to receive the first output signalsand select from among the first output signals one of the first outputsignals to produce a second output signal; and one or more weightselectors that are each configured to: receive one of the second outputsignals; access from among a plurality of weight values one of theweight values for the received one of the second output signals, theaccessed one of the weight values: corresponding to all three of: thecolumn balancer that produced the second output signal; the residual ISIdetector that produced the selected one of the first output signals toproduce the second output signal; and the sign of the residual ISIindicated by the selected one of the first output signals to produce thesecond output signal; and having a magnitude that is dependent on thesign of the residual ISI indicated by the selected one of the firstoutput signals to produce the second output signal; and produce a thirdoutput signal based on the accessed one of the weight values and thesign of the residual ISI indicated by the selected one of the firstoutput signals to produce the second output signal, the third signalbeing usable in producing one or more fourth output signals representingone or more control variables for one or more equalizers.
 2. The systemof claim 1, wherein the plurality of weight values reside in athree-dimensional weight register file, the plurality of weight valuesbeing indexed by column balancer, residual ISI detector, and residualISI sign.
 3. The system of claim 1, wherein an integrator is used foreach of the third output signals to produce the corresponding fourthoutput signal by integrating the third output signal.
 4. The system ofclaim 1, wherein a probability of the column balancer selecting any oneof the first output signals is equal to a probability of the columnbalancer selecting any other one of the first output signals to producethe second output signal.
 5. The system of claim 4, wherein the columnbalancer is configured to select from among the first output signalsrandomly.
 6. The system of claim 4, wherein the column balancer isconfigured to select from among the first output signals sequentially.7. The system of claim 4, wherein the column balancer is configured toselect a same one of the first output signals twice in a row.
 8. Thesystem of claim 1, wherein the accessed one of the weight values iscalculated from a derivative of an average of residual ISI in aworst-case transmission channel with respect to one or more of thecontrol variables for one or more of the equalizers.
 9. The system ofclaim 1, wherein: there are two weight selectors; the third outputsignal of a first one of the weight selectors is for use in producing alinear equalizer (LE) parameter signal; and the third output signal of asecond one of the weight selectors is for use in producing a boundaryfeedback (FB) coefficient signal and a data FB coefficient signal forthe DFE.
 10. The system of claim 1, wherein the data FB coefficient isderived from the boundary FB coefficient using a scaling factor.
 11. Thesystem of claim 1, wherein different ones of the residual ISI detectorsuse different bit patterns or different schemes to detect the residualISI.
 12. The system of claim 1, where the residual ISI detectors areprogrammable.
 13. The system of claim 1, wherein functions of aplurality of the residual ISI detectors are implemented using onemultiplexed residual ISI detector to produce the first output signals.14. The system of claim 1, wherein functions of a plurality of thecolumn balancers are implemented using one multiplexed column balancerto produce the second output signals.
 15. The system of claim 1, whereinfunctions of a plurality of the weight selectors are implemented usingone multiplexed weight selector to produce the third output signals. 16.The system of claim 1, wherein functions of the column balancer and acorresponding one of the weight selectors are implemented together. 17.The system of claim 1, wherein functions of a plurality of the residualISI detectors and a plurality of the column balancers are implementedtogether.
 18. A method comprising: by one or more residual ISIdetectors: receiving from a DFE a data signal or an error signalcomprising residual ISI; and producing a first output signal indicatingwhether the residual ISI has a positive sign or a negative sign; by oneor more column balancers: receiving the first output signals; andselecting from among the first output signals one of the first outputsignals to produce a second output signal; by one or more weightselectors: receiving one of the second output signals; accessing fromamong a plurality of weight values one of the weight values for thereceived one of the second output signals, the accessed one of theweight values: corresponding to all three of: the column balancer thatproduced the second output signal; the residual ISI detector thatproduced the selected one of the first output signals to produce thesecond output signal; and the sign of the residual ISI indicated by theselected one of the first output signals to produce the second outputsignal; and having a magnitude that is dependent on the sign of theresidual ISI indicated by the selected one of the first output signalsto produce the second output signal; and producing a third output signalbased on the accessed one of the weight values and the sign of theresidual ISI indicated by the selected one of the first output signalsto produce the second output signal, the third signal being usable inproducing one or more fourth output signals representing one or morecontrol variables for one or more equalizers.
 19. A system comprising:means for receiving from a DFE a data signal or an error signalcomprising residual ISI and producing a first output signal indicatingwhether the residual ISI has a positive sign or a negative sign; meansfor receiving the first output signals and selecting from among thefirst output signals one of the first output signals to produce a secondoutput signal; and means for: receiving one of the second outputsignals; accessing from among a plurality of weight values one of theweight values for the received one of the second output signals, theaccessed one of the weight values: corresponding to all three of: thecolumn balancer that produced the second output signal; the residual ISIdetector that produced the selected one of the first output signals toproduce the second output signal; and the sign of the residual ISIindicated by the selected one of the first output signals to produce thesecond output signal; and having a magnitude that is dependent on thesign of the residual ISI indicated by the selected one of the firstoutput signals to produce the second output signal; and producing athird output signal based on the accessed one of the weight values andthe sign of the residual ISI indicated by the selected one of the firstoutput signals to produce the second output signal, the third signalbeing usable in producing one or more fourth output signals representingone or more control variables for one or more equalizers.